<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui"
      xmlns:h="http://java.sun.com/jsf/html">

    <body>

        <ui:composition template="./../../WEB-INF/templates/MainTemplate.xhtml">

            <ui:define name="bar">
                <h:form id="barForm">
                    <p:panel id="barFormPanel" styleClass="noMargin noPadding noBorder">
                        <p:commandButton styleClass="actionButton" oncomplete="dialogoNuevoCliente.show();" update=":dialogoForm:dialogoNuevoClientePanel" actionListener="#{nuevoClienteBean.initCliente()}" id="nuevoClienteButton" value="#{messages.NuevoCliente}"></p:commandButton>
                        <p:commandButton styleClass="actionButton" oncomplete="dialogoEditarCliente.show();" update=":dialogoForm:dialogoEditarClientePanel" disabled="#{listadoClientesBean.entidadElegida==null}" id="editarclienteButton" value="#{messages.Editar}" actionListener="#{listadoClientesBean.elegirEntidad()}"></p:commandButton>
                    </p:panel>
                </h:form>
            </ui:define>

            
            <ui:define name="dialogs">
                <h:form id="dialogoForm">
                    <p:dialog id="dialogoNuevoCliente" modal="true" widgetVar="dialogoNuevoCliente"  header="#{messages.NuevoCliente}">
                        <p:panel styleClass="noMargin noPadding noBorder" id="dialogoNuevoClientePanel">
                            <p:panelGrid columns="2" styleClass="noBorder" id="tipoClientePanelGrid">
                                <p:outputLabel for="selectTipoCliente" value="#{messages.TipoCliente}"></p:outputLabel>
                                <p:selectOneMenu  converter="#{tipoClienteConverter}" id="selectTipoCliente" value="#{nuevoClienteBean.nuevoCliente.tipoCliente}" label="#{messages.TipoCliente}">
                                    <f:selectItem itemLabel="#{messages.SeleccionaTipoCliente}" itemValue="" />  
                                    <f:selectItems value="#{resourcesBean.tiposCliente}" var="tipoCliente" itemLabel="#{tipoCliente.descripcion}" itemValue="#{tipoCliente}"></f:selectItems>
                                    <p:ajax event="change" update="panelDatosNuevosClienteParticular panelDatosNuevosClienteOtro"></p:ajax>
                                </p:selectOneMenu>
                            </p:panelGrid>
                            <p:panel styleClass="noMargin noPadding noBorder" id="panelDatosNuevosClienteParticular">
                                <p:panelGrid  rendered="#{nuevoClienteBean.nuevoCliente.tipoCliente!=null and nuevoClienteBean.nuevoCliente.tipoCliente.idTipoCliente==2}" columns="2">
                                    <p:outputLabel for="inputNombreClienteParticular" value="#{messages.NombreYApellidos}"></p:outputLabel>
                                    <p:inputText id="inputNombreClienteParticular" value="#{nuevoClienteBean.nuevoCliente.nombre}"></p:inputText>

                                    <p:outputLabel for="inputEmailClienteParticular" value="#{messages.Email}"></p:outputLabel>
                                    <p:inputText id="inputEmailClienteParticular" value="#{nuevoClienteBean.nuevoCliente.email}"></p:inputText>

                                    <p:outputLabel for="inputDNIClienteParticular" value="#{messages.DNI}"></p:outputLabel>
                                    <p:inputText id="inputDNIClienteParticular" value="#{nuevoClienteBean.nuevoCliente.nif}"></p:inputText>

                                    <p:outputLabel for="inputMovilClienteParticular" value="#{messages.Movil}"></p:outputLabel>
                                    <p:inputText id="inputMovilClienteParticular" value="#{nuevoClienteBean.nuevoCliente.movil}"></p:inputText>

                                    <p:outputLabel for="inputTelefonoClienteParticular" value="#{messages.Telefono}"></p:outputLabel>
                                    <p:inputText id="inputTelefonoClienteParticular" value="#{nuevoClienteBean.nuevoCliente.telefono}"></p:inputText>

                                    <p:outputLabel for="selectPaisClienteParticular" value="#{messages.Pais}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{paisConverter}" id="selectPaisClienteParticular" value="#{nuevoClienteBean.nuevoCliente.pais}" label="#{messages.Pais}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaPais}" itemValue="" />  
                                        <f:selectItem itemLabel="#{resourcesBean.spain.descripcion}"  itemValue="#{resourcesBean.spain}" />  
                                        <f:selectItems value="#{resourcesBean.paises}" var="pais" itemLabel="#{pais.descripcion}" itemValue="#{pais}"></f:selectItems>
                                        <p:ajax event="change" update="selectProvinciaClienteParticular"></p:ajax>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="selectProvinciaClienteParticular" value="#{messages.Provincia}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains"  converter="#{provinciaConverter}" id="selectProvinciaClienteParticular" value="#{nuevoClienteBean.nuevoCliente.provincia}" label="#{messages.Provincia}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaProvincia}" itemValue="" />  
                                        <f:selectItems value="#{nuevoClienteBean.nuevoCliente.pais.provinciaList}" var="provincia" itemLabel="#{provincia.descripcion}" itemValue="#{provincia}"></f:selectItems>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="inputLocalidadClienteParticular" value="#{messages.Localidad}"></p:outputLabel>
                                    <p:inputText id="inputLocalidadClienteParticular" value="#{nuevoClienteBean.nuevoCliente.localidad}"></p:inputText>

                                    <p:outputLabel for="inputDireccionClienteParticular" value="#{messages.Direccion}"></p:outputLabel>
                                    <p:inputText id="inputDireccionClienteParticular" value="#{nuevoClienteBean.nuevoCliente.direccion}"></p:inputText>

                                    <p:outputLabel for="inputCodigoPostalClienteParticular" value="#{messages.CodigoPostal}"></p:outputLabel>
                                    <p:inputText id="inputCodigoPostalClienteParticular" value="#{nuevoClienteBean.nuevoCliente.codigoPostal}"></p:inputText>

                                    <p:outputLabel for="selectDescuentoClienteParticular" value="#{messages.Descuento}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains"  converter="#{descuentoClienteConverter}" id="selectDescuentoClienteParticular" value="#{nuevoClienteBean.descuentoCliente}" label="#{messages.Descuento}">
                                        <f:selectItem itemLabel="#{messages.NoDescuento}" itemValue="" />  
                                        <f:selectItems value="#{resourcesBean.descuentosCliente}" var="descuento" itemLabel="#{descuento.descripcion}" itemValue="#{descuento}"></f:selectItems>
                                    </p:selectOneMenu>
                                    
                                    <p:commandButton process="@parent" update="@form :clienteForm:clientes" value="#{messages.Guardar}" actionListener="#{nuevoClienteBean.crearCliente()}"></p:commandButton>
                                </p:panelGrid>
                            </p:panel>

                            <p:panel styleClass="noMargin noPadding noBorder" id="panelDatosNuevosClienteOtro">
                                <p:panelGrid  rendered="#{nuevoClienteBean.nuevoCliente.tipoCliente!=null and nuevoClienteBean.nuevoCliente.tipoCliente.idTipoCliente!=2}" columns="2">
                                    <p:outputLabel for="inputNombreClienteOtro" value="#{messages.NombreComercial}"></p:outputLabel>
                                    <p:inputText id="inputNombreClienteOtro" value="#{nuevoClienteBean.nuevoCliente.nombre}"></p:inputText>

                                    <p:outputLabel for="inputRazonSocialClienteOtro" value="#{messages.RazonSocial}"></p:outputLabel>
                                    <p:inputText id="inputRazonSocialClienteOtro" value="#{nuevoClienteBean.nuevoCliente.razonSocial}"></p:inputText>

                                    <p:outputLabel for="inputEmailClienteOtro" value="#{messages.Email}"></p:outputLabel>
                                    <p:inputText id="inputEmailClienteOtro" value="#{nuevoClienteBean.nuevoCliente.email}"></p:inputText>

                                    <p:outputLabel for="inputCIFClienteOtro" value="#{messages.CIF}"></p:outputLabel>
                                    <p:inputText id="inputCIFClienteOtro" value="#{nuevoClienteBean.nuevoCliente.nif}"></p:inputText>

                                    <p:outputLabel for="inputMovilClienteOtro" value="#{messages.Movil}"></p:outputLabel>
                                    <p:inputText id="inputMovilClienteOtro" value="#{nuevoClienteBean.nuevoCliente.movil}"></p:inputText>

                                    <p:outputLabel for="inputTelefonoClienteOtro" value="#{messages.Telefono}"></p:outputLabel>
                                    <p:inputText id="inputTelefonoClienteOtro" value="#{nuevoClienteBean.nuevoCliente.telefono}"></p:inputText>

                                    <p:outputLabel for="selectPaisClienteOtro" value="#{messages.Pais}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{paisConverter}" id="selectPaisClienteOtro" value="#{nuevoClienteBean.nuevoCliente.pais}" label="#{messages.Pais}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaPais}" itemValue="" />  
                                        <f:selectItem itemLabel="#{resourcesBean.spain.descripcion}"  itemValue="#{resourcesBean.spain}" />  
                                        <f:selectItems value="#{resourcesBean.paises}" var="pais" itemLabel="#{pais.descripcion}" itemValue="#{pais}"></f:selectItems>
                                        <p:ajax event="change" update="selectProvinciaClienteParticular"></p:ajax>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="selectProvinciaClienteOtro" value="#{messages.Provincia}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{provinciaConverter}" id="selectProvinciaClienteOtro" value="#{nuevoClienteBean.nuevoCliente.provincia}" label="#{messages.Provincia}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaProvincia}" itemValue="" />  
                                        <f:selectItems value="#{nuevoClienteBean.nuevoCliente.pais.provinciaList}" var="provincia" itemLabel="#{provincia.descripcion}" itemValue="#{provincia}"></f:selectItems>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="inputLocalidadClienteOtro" value="#{messages.Localidad}"></p:outputLabel>
                                    <p:inputText id="inputLocalidadClienteOtro" value="#{nuevoClienteBean.nuevoCliente.localidad}"></p:inputText>

                                    <p:outputLabel for="inputDireccionClienteOtro" value="#{messages.Direccion}"></p:outputLabel>
                                    <p:inputText id="inputDireccionClienteOtro" value="#{nuevoClienteBean.nuevoCliente.direccion}"></p:inputText>

                                    <p:outputLabel for="inputCodigoPostalClienteOtro" value="#{messages.CodigoPostal}"></p:outputLabel>
                                    <p:inputText id="inputCodigoPostalClienteOtro" value="#{nuevoClienteBean.nuevoCliente.codigoPostal}"></p:inputText>

                                    <p:outputLabel for="selectPaisFiscalClienteOtro" value="#{messages.PaisFiscal}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{paisConverter}" id="selectPaisFiscalClienteOtro" value="#{nuevoClienteBean.nuevoCliente.paisFiscal}" label="#{messages.PaisFiscal}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaPais}" itemValue="" />  
                                        <f:selectItems value="#{resourcesBean.paises}" var="pais" itemLabel="#{pais.descripcion}" itemValue="#{pais}"></f:selectItems>
                                        <p:ajax event="change" update="selectProvinciaFiscalClienteOtro"></p:ajax>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="selectProvinciaFiscalClienteOtro" value="#{messages.ProvinciaFiscal}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{provinciaConverter}" id="selectProvinciaFiscalClienteOtro" value="#{nuevoClienteBean.nuevoCliente.provinciaFiscal}" label="#{messages.ProvinciaFiscal}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaProvincia}" itemValue="" />  
                                        <f:selectItems value="#{nuevoClienteBean.nuevoCliente.pais.provinciaList}" var="provincia" itemLabel="#{provincia.descripcion}" itemValue="#{provincia}"></f:selectItems>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="inputLocalidadFiscalClienteOtro" value="#{messages.LocalidadFiscal}"></p:outputLabel>
                                    <p:inputText id="inputLocalidadFiscalClienteOtro" value="#{nuevoClienteBean.nuevoCliente.localidadFiscal}"></p:inputText>

                                    <p:outputLabel for="inputDireccionFiscalClienteOtro" value="#{messages.DireccionFiscal}"></p:outputLabel>
                                    <p:inputText id="inputDireccionFiscalClienteOtro" value="#{nuevoClienteBean.nuevoCliente.direccionFiscal}"></p:inputText>

                                    <p:outputLabel for="inputCodigoPostalFiscalClienteOtro" value="#{messages.CodigoPostalFiscal}"></p:outputLabel>
                                    <p:inputText id="inputCodigoPostalFiscalClienteOtro" value="#{nuevoClienteBean.nuevoCliente.codigoPostalFiscal}"></p:inputText>

                                    <p:outputLabel for="inputDescuentoClienteOtro" value="#{messages.Descuento}"></p:outputLabel>
                                    <p:inputText id="inputDescuentoClienteOtro" value="#{nuevoClienteBean.nuevoCliente.descuento}">
                                        <f:convertNumber minFractionDigits="2" maxFractionDigits="2" />
                                    </p:inputText>

                                    <p:outputLabel for="inputMultiplicadorClienteOtro" value="#{messages.Multiplicador}"></p:outputLabel>
                                    <p:inputText id="inputMultiplicadorClienteOtro" value="#{nuevoClienteBean.nuevoCliente.multiplicador}">
                                        <f:convertNumber minFractionDigits="2" maxFractionDigits="2" />
                                    </p:inputText>

                                    <p:outputLabel for="inputRecargoClienteOtro" value="#{messages.Recargo}"></p:outputLabel>
                                    <p:selectBooleanCheckbox id="inputRecargoClienteOtro" value="#{nuevoClienteBean.nuevoCliente.recargo}"></p:selectBooleanCheckbox>

                                    <p:commandButton process="@parent" update=":clienteForm:clientes @form" value="#{messages.Guardar}" actionListener="#{nuevoClienteBean.crearCliente()}"></p:commandButton>
                                </p:panelGrid>
                            </p:panel>
                        </p:panel>
                        
                    </p:dialog>   
                    
                    <p:dialog id="dialogoEditarCliente" modal="true" widgetVar="dialogoEditarCliente"  header="#{messages.EditarCliente}">
                        <p:panel styleClass="noMargin noPadding noBorder" id="dialogoEditarClientePanel">
                            <p:panelGrid columns="2" styleClass="noBorder" id="tipoClientePanelGridEditar">
                                <p:outputLabel for="selectTipoClienteEditar" value="#{messages.TipoCliente}"></p:outputLabel>
                                <p:selectOneMenu  converter="#{tipoClienteConverter}" id="selectTipoClienteEditar" value="#{editarClienteBean.clienteElegido.tipoCliente}" label="#{messages.TipoCliente}">
                                    <f:selectItem itemLabel="#{messages.SeleccionaTipoCliente}" itemValue="" />  
                                    <f:selectItems value="#{resourcesBean.tiposCliente}" var="tipoCliente" itemLabel="#{tipoCliente.descripcion}" itemValue="#{tipoCliente}"></f:selectItems>
                                    <p:ajax event="change" update="panelDatosNuevosClienteParticularEditar panelDatosNuevosClienteOtroEditar"></p:ajax>
                                </p:selectOneMenu>
                            </p:panelGrid>
                            <p:panel styleClass="noMargin noPadding noBorder" id="panelDatosNuevosClienteParticularEditar">
                                <p:panelGrid  rendered="#{editarClienteBean.clienteElegido.tipoCliente!=null and editarClienteBean.clienteElegido.tipoCliente.idTipoCliente==2}" columns="2">
                                    <p:outputLabel for="inputNombreClienteParticularEditar" value="#{messages.NombreYApellidos}"></p:outputLabel>
                                    <p:inputText id="inputNombreClienteParticularEditar" value="#{editarClienteBean.clienteElegido.nombre}"></p:inputText>

                                    <p:outputLabel for="inputEmailClienteParticularEditar" value="#{messages.Email}"></p:outputLabel>
                                    <p:inputText id="inputEmailClienteParticularEditar" value="#{editarClienteBean.clienteElegido.email}"></p:inputText>

                                    <p:outputLabel for="inputDNIClienteParticularEditar" value="#{messages.DNI}"></p:outputLabel>
                                    <p:inputText id="inputDNIClienteParticularEditar" value="#{editarClienteBean.clienteElegido.nif}"></p:inputText>

                                    <p:outputLabel for="inputMovilClienteParticularEditar" value="#{messages.Movil}"></p:outputLabel>
                                    <p:inputText id="inputMovilClienteParticularEditar" value="#{editarClienteBean.clienteElegido.movil}"></p:inputText>

                                    <p:outputLabel for="inputTelefonoClienteParticularEditar" value="#{messages.Telefono}"></p:outputLabel>
                                    <p:inputText id="inputTelefonoClienteParticularEditar" value="#{editarClienteBean.clienteElegido.telefono}"></p:inputText>

                                    <p:outputLabel for="selectPaisClienteParticularEditar" value="#{messages.Pais}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{paisConverter}" id="selectPaisClienteParticularEditar" value="#{editarClienteBean.clienteElegido.pais}" label="#{messages.Pais}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaPais}" itemValue="" />  
                                        <f:selectItem itemLabel="#{resourcesBean.spain.descripcion}"  itemValue="#{resourcesBean.spain}" />  
                                        <f:selectItems value="#{resourcesBean.paises}" var="pais" itemLabel="#{pais.descripcion}" itemValue="#{pais}"></f:selectItems>
                                        <p:ajax event="change" update="selectProvinciaClienteParticularEditar"></p:ajax>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="selectProvinciaClienteParticularEditar" value="#{messages.Provincia}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains"  converter="#{provinciaConverter}" id="selectProvinciaClienteParticularEditar" value="#{editarClienteBean.clienteElegido.provincia}" label="#{messages.Provincia}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaProvincia}" itemValue="" />  
                                        <f:selectItems value="#{nuevoClienteBean.nuevoCliente.pais.provinciaList}" var="provincia" itemLabel="#{provincia.descripcion}" itemValue="#{provincia}"></f:selectItems>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="inputLocalidadClienteParticularEditar" value="#{messages.Localidad}"></p:outputLabel>
                                    <p:inputText id="inputLocalidadClienteParticularEditar" value="#{editarClienteBean.clienteElegido.localidad}"></p:inputText>

                                    <p:outputLabel for="inputDireccionClienteParticularEditar" value="#{messages.Direccion}"></p:outputLabel>
                                    <p:inputText id="inputDireccionClienteParticularEditar" value="#{editarClienteBean.clienteElegido.direccion}"></p:inputText>

                                    <p:outputLabel for="inputCodigoPostalClienteParticularEditar" value="#{messages.CodigoPostal}"></p:outputLabel>
                                    <p:inputText id="inputCodigoPostalClienteParticularEditar" value="#{editarClienteBean.clienteElegido.codigoPostal}"></p:inputText>

                                    <p:outputLabel for="selectDescuentoClienteParticularEditar" value="#{messages.Descuento}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains"  converter="#{descuentoClienteConverter}" id="selectDescuentoClienteParticularEditar" value="#{editarClienteBean.descuentoCliente}" label="#{messages.Descuento}">
                                        <f:selectItem itemLabel="#{messages.NoDescuento}" itemValue="" />  
                                        <f:selectItems value="#{resourcesBean.descuentosCliente}" var="descuento" itemLabel="#{descuento.descripcion}" itemValue="#{descuento}"></f:selectItems>
                                    </p:selectOneMenu>

                                    <p:commandButton process="@parent" update="@form :clienteForm:clientes" value="#{messages.Editar}" actionListener="#{editarClienteBean.editarCliente()}"></p:commandButton>
                                </p:panelGrid>
                            </p:panel>

                            <p:panel styleClass="noMargin noPadding noBorder" id="panelDatosNuevosClienteOtroEditar">
                                <p:panelGrid  rendered="#{editarClienteBean.clienteElegido.tipoCliente!=null and editarClienteBean.clienteElegido.tipoCliente.idTipoCliente!=2}" columns="2">
                                    <p:outputLabel for="inputNombreClienteOtroEditar" value="#{messages.NombreComercial}"></p:outputLabel>
                                    <p:inputText id="inputNombreClienteOtroEditar" value="#{editarClienteBean.clienteElegido.nombre}"></p:inputText>

                                    <p:outputLabel for="inputRazonSocialClienteOtroEditar" value="#{messages.RazonSocial}"></p:outputLabel>
                                    <p:inputText id="inputRazonSocialClienteOtroEditar" value="#{editarClienteBean.clienteElegido.razonSocial}"></p:inputText>

                                    <p:outputLabel for="inputEmailClienteOtroEditar" value="#{messages.Email}"></p:outputLabel>
                                    <p:inputText id="inputEmailClienteOtroEditar" value="#{editarClienteBean.clienteElegido.email}"></p:inputText>

                                    <p:outputLabel for="inputCIFClienteOtroEditar" value="#{messages.CIF}"></p:outputLabel>
                                    <p:inputText id="inputCIFClienteOtroEditar" value="#{editarClienteBean.clienteElegido.nif}"></p:inputText>

                                    <p:outputLabel for="inputMovilClienteOtroEditar" value="#{messages.Movil}"></p:outputLabel>
                                    <p:inputText id="inputMovilClienteOtroEditar" value="#{editarClienteBean.clienteElegido.movil}"></p:inputText>

                                    <p:outputLabel for="inputTelefonoClienteOtroEditar" value="#{messages.Telefono}"></p:outputLabel>
                                    <p:inputText id="inputTelefonoClienteOtroEditar" value="#{editarClienteBean.clienteElegido.telefono}"></p:inputText>

                                    <p:outputLabel for="selectPaisClienteOtroEditar" value="#{messages.Pais}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{paisConverter}" id="selectPaisClienteOtroEditar" value="#{editarClienteBean.clienteElegido.pais}" label="#{messages.Pais}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaPais}" itemValue="" />  
                                        <f:selectItem itemLabel="#{resourcesBean.spain.descripcion}"  itemValue="#{resourcesBean.spain}" />  
                                        <f:selectItems value="#{resourcesBean.paises}" var="pais" itemLabel="#{pais.descripcion}" itemValue="#{pais}"></f:selectItems>
                                        <p:ajax event="change" update="selectProvinciaClienteOtroEditar"></p:ajax>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="selectProvinciaClienteOtroEditar" value="#{messages.Provincia}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{provinciaConverter}" id="selectProvinciaClienteOtroEditar" value="#{editarClienteBean.clienteElegido.provincia}" label="#{messages.Provincia}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaProvincia}" itemValue="" />  
                                        <f:selectItems value="#{editarClienteBean.clienteElegido.pais.provinciaList}" var="provincia" itemLabel="#{provincia.descripcion}" itemValue="#{provincia}"></f:selectItems>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="inputLocalidadClienteOtroEditar" value="#{messages.Localidad}"></p:outputLabel>
                                    <p:inputText id="inputLocalidadClienteOtroEditar" value="#{editarClienteBean.clienteElegido.localidad}"></p:inputText>

                                    <p:outputLabel for="inputDireccionClienteOtroEditar" value="#{messages.Direccion}"></p:outputLabel>
                                    <p:inputText id="inputDireccionClienteOtroEditar" value="#{editarClienteBean.clienteElegido.direccion}"></p:inputText>

                                    <p:outputLabel for="inputCodigoPostalClienteOtroEditar" value="#{messages.CodigoPostal}"></p:outputLabel>
                                    <p:inputText id="inputCodigoPostalClienteOtroEditar" value="#{editarClienteBean.clienteElegido.codigoPostal}"></p:inputText>

                                    <p:outputLabel for="selectPaisFiscalClienteOtroEditar" value="#{messages.PaisFiscal}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{paisConverter}" id="selectPaisFiscalClienteOtroEditar" value="#{editarClienteBean.clienteElegido.paisFiscal}" label="#{messages.PaisFiscal}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaPais}" itemValue="" />  
                                        <f:selectItems value="#{resourcesBean.paises}" var="pais" itemLabel="#{pais.descripcion}" itemValue="#{pais}"></f:selectItems>
                                        <p:ajax event="change" update="selectProvinciaFiscalClienteOtroEditar"></p:ajax>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="selectProvinciaFiscalClienteOtroEditar" value="#{messages.ProvinciaFiscal}"></p:outputLabel>
                                    <p:selectOneMenu filter="true" filterMatchMode="contains" converter="#{provinciaConverter}" id="selectProvinciaFiscalClienteOtroEditar" value="#{editarClienteBean.clienteElegido.provinciaFiscal}" label="#{messages.ProvinciaFiscal}">
                                        <f:selectItem itemLabel="#{messages.SeleccionaProvincia}" itemValue="" />  
                                        <f:selectItems value="#{editarClienteBean.clienteElegido.pais.provinciaList}" var="provincia" itemLabel="#{provincia.descripcion}" itemValue="#{provincia}"></f:selectItems>
                                    </p:selectOneMenu>

                                    <p:outputLabel for="inputLocalidadFiscalClienteOtroEditar" value="#{messages.LocalidadFiscal}"></p:outputLabel>
                                    <p:inputText id="inputLocalidadFiscalClienteOtroEditar" value="#{editarClienteBean.clienteElegido.localidadFiscal}"></p:inputText>

                                    <p:outputLabel for="inputDireccionFiscalClienteOtroEditar" value="#{messages.DireccionFiscal}"></p:outputLabel>
                                    <p:inputText id="inputDireccionFiscalClienteOtroEditar" value="#{editarClienteBean.clienteElegido.direccionFiscal}"></p:inputText>

                                    <p:outputLabel for="inputCodigoPostalFiscalClienteOtroEditar" value="#{messages.CodigoPostalFiscal}"></p:outputLabel>
                                    <p:inputText id="inputCodigoPostalFiscalClienteOtroEditar" value="#{editarClienteBean.clienteElegido.codigoPostalFiscal}"></p:inputText>

                                    <p:outputLabel for="inputDescuentoClienteOtroEditar" value="#{messages.Descuento}"></p:outputLabel>
                                    <p:inputText id="inputDescuentoClienteOtroEditar" value="#{editarClienteBean.clienteElegido.descuento}">
                                        <f:convertNumber minFractionDigits="2" maxFractionDigits="2" />
                                    </p:inputText>

                                    <p:outputLabel for="inputMultiplicadorClienteOtroEditar" value="#{messages.Multiplicador}"></p:outputLabel>
                                    <p:inputText id="inputMultiplicadorClienteOtroEditar" value="#{editarClienteBean.clienteElegido.multiplicador}">
                                        <f:convertNumber minFractionDigits="2" maxFractionDigits="2" />
                                    </p:inputText>

                                    <p:outputLabel for="inputRecargoClienteOtroEditar" value="#{messages.Recargo}"></p:outputLabel>
                                    <p:selectBooleanCheckbox id="inputRecargoClienteOtroEditar" value="#{editarClienteBean.clienteElegido.recargo}"></p:selectBooleanCheckbox>

                                    <p:commandButton process="@parent" update=":clienteForm:clientes @form" value="#{messages.Editar}" actionListener="#{editarClienteBean.editarCliente()}"></p:commandButton>
                                </p:panelGrid>
                            </p:panel>
                        </p:panel>
                    </p:dialog>                     
                </h:form>
            </ui:define>
            
            <ui:define name="content">
                <h:form id="clienteForm">
                    <p:growl autoUpdate="true" life="4000" id="almacenGrowl"></p:growl>
                    <p:dataTable emptyMessage="#{messages.NoCliente}" sortOrder="descending" resizableColumns="true" selectionMode="single" liveScroll="true" scrollable="true" scrollRows="50" scrollHeight="600" id="clientes" var="cliente" rowKey="#{cliente.idCliente}" selection="#{listadoClientesBean.entidadElegida}" value="#{listadoClientesBean.listadoEntidades}">
                        <p:ajax update=":barForm:barFormPanel" event="rowSelect" listener="#{listadoClientesBean.seleccionarEntidad()}"/> 
                        <p:ajax update=":barForm:barFormPanel" event="rowUnselect" listener="#{listadoClientesBean.deseleccionarEntidad()}"/>
                        <p:column sortBy="#{cliente.nombre}" headerText="#{messages.Nombre}" filterBy="#{cliente.nombre}" filterMatchMode="contains">
                            <h:outputText value="#{cliente.nombre}"></h:outputText> 
                        </p:column>
                        <p:column filterBy="#{cliente.nif}" filterMatchMode="contains" sortBy="#{cliente.nif}" headerText="#{messages.NifCif}">
                            <h:outputText value="#{cliente.nif}"></h:outputText> 
                        </p:column>
                        <p:column sortBy="#{cliente.email}" filterBy="#{cliente.email}" filterMatchMode="contains" headerText="#{messages.Email}">
                            <h:outputText value="#{cliente.email}"></h:outputText> 
                        </p:column>
                        <p:column sortBy="#{cliente.pais.descripcion}" filterBy="#{cliente.pais.descripcion}" filterMatchMode="contains" headerText="#{messages.Pais}">
                            <h:outputText value="#{cliente.pais.descripcion}"></h:outputText> 
                        </p:column>
                        <p:column sortBy="#{cliente.provincia.descripcion}" filterBy="#{cliente.provincia.descripcion}" filterMatchMode="contains" headerText="#{messages.Provincia}">
                            <h:outputText value="#{cliente.provincia.descripcion}"></h:outputText> 
                        </p:column>
                        <p:column sortBy="#{cliente.movil}" filterBy="#{cliente.movil}" filterMatchMode="contains" headerText="#{messages.Movil}">
                            <h:outputText value="#{cliente.movil}"></h:outputText> 
                        </p:column>
                        <p:column sortBy="#{cliente.fechaAlta}" headerText="#{messages.FechaAlta}">
                            <h:outputText value="#{cliente.fechaAlta}">
                                <f:convertDateTime pattern="dd/MM/yyyy HH:mm"/>
                            </h:outputText> 
                        </p:column>
                    </p:dataTable>
                </h:form>
            </ui:define>

        </ui:composition>

    </body>
</html>
